package obligatorio;
import java.util.LinkedList;
import java.util.concurrent.Semaphore;
public class Central911 {
	/**
	 *  Atributos 
	 */
	public LinkedList<Llamada> llamadasEntrada = new LinkedList<Llamada>(); // Es la cola de entrada de las llamadas.
	public LinkedList<Llamada> llamadasEnEspera = new LinkedList<Llamada>(); // Es la cola de llamadas en espera.
	public LinkedList<Operador> listaDeOperadores = new LinkedList<Operador>(); // Es la lista de operadores trabajando en la Central.
	public LinkedList<Emergencia> registroDeEmergencias = new LinkedList<Emergencia>(); // Es el registro de las emergencias creadas.
	public LinkedList<Emergencia> emergenciasA = new LinkedList<Emergencia>(); // Es el registro de las emergencias del tipo A.
	public LinkedList<Emergencia> emergenciasB = new LinkedList<Emergencia>(); // Es el registro de las emergencias del tipo B.
	public LinkedList<Emergencia> emergenciasC = new LinkedList<Emergencia>(); // Es el registro de las emergencias del tipo C.
	
	public static LinkedList<String> unArray = new LinkedList<String>();
	
	public LinkedList<Llamada> getllamadasEntrada(){
		return llamadasEntrada;
	}
	public LinkedList<Llamada> getllamadasEnEspera(){
		return llamadasEnEspera;
	}
	public Llamada getPrimeraLlamada(){
		Llamada temp = llamadasEnEspera.getFirst();
		llamadasEnEspera.removeFirst();		
		return temp;
	}
	public LinkedList<Emergencia> getEmergencias(){
		return registroDeEmergencias;
	}
		public Central911(LinkedList<Llamada> llamadasEntrada,
			LinkedList<Llamada> llamadasEnEspera, 
			LinkedList<Operador> listaDeOperadores,
			LinkedList<Operador> listaDeOperadoresLibres,
			LinkedList<Emergencia> registroDeEmergencias,
			LinkedList<Emergencia> emergenciasA,  
			LinkedList<Emergencia> emergenciasB,
			LinkedList<Emergencia> emergenciasC) {
		this.listaDeOperadores = listaDeOperadores;
		this.llamadasEnEspera = llamadasEnEspera;
		this.llamadasEntrada = llamadasEntrada;
		this.registroDeEmergencias = registroDeEmergencias;
		this.emergenciasA = emergenciasA;
		this.emergenciasB = emergenciasB;
		this.emergenciasC = emergenciasC;
		this.llamadasEnEspera = llamadasEntrada;
		}
}
